package com.syni.mdd.sjb.common.datatreaure.entity.vo.rp.minAppLogin;

import com.syni.mdd.sjb.common.component.utils.feign.dto.mddAll.apiCoupon.SearchCouponDetailDto;
import lombok.Data;

import java.time.LocalDateTime;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

@Data
public class SearchConsumerCouponDetailRpVo {
    private Integer codeType;

    private BmsGroupBuyDetailData buyDetailData;

    private UserReceDetailData userReceDetailData;

    @Data
    public static class BusinessData{
        private String vendorName;
        private String logoUrl;
    }

    @Data
    public static class BmsGroupBuyDetailData{
        private Integer showTemplateId = 1;
        private Integer id;
        private List<String> groupPhotos = new ArrayList<>();
        private BusinessData business;

        private String groupName;

        private String useNumber;

        private Double groupValue;

        private Double groupPrice;

        private Integer useWay = 1;

        private String useTime;

        private Integer noUseDate;

        private Integer isRefundAnyTime;

        private Integer isOverdueRefund;

        private Integer isFreePackage;

        private Integer isUseTheRoom;

        private Integer isEnjoyOtherBen;

        private Integer needAppointment;

        private Integer limitBuyNum;

        private Integer limitOnceBuyNum;

        private Integer limitOnceUse;

        private String ortherServices;

        private Date expireTime;


        private Integer limitSellNum;
        private Date onlineTime;

        private Integer isUseOne ;

        private Integer isLadyUse;


        private Integer limitSingleExperience = 0;

        List<GroupContent> groupContent = new ArrayList<>();


        private Integer leastBuyNum;


        private String textContent;

        private List<String> groupDetails = new ArrayList<>();

    }

    @Data
    public static class GroupContent{
        private Integer libraryId;
        private String foodTypeName;
        List<SearchCouponDetailDto.BmsDxSubFood> bmsDxSubFoods;
        private String choose = "1";


    }

    @Data
    public static class BmsDxSubFood{
        private Integer id;

        private String foodName;

        private Double foodPrice;

        private Integer foodNum;
    }

    @Data
    public static class UserReceDetailData{
        private Integer couponType;
        private String couponDesc = "";
        private String couponName;
        private BusinessData business;
        private LocalDateTime expireTime;
    }

}
